package com.agv.backend.service;

import com.agv.backend.entity.pojo.AgvTask;
import com.agv.backend.entity.AjaxResult;
import com.agv.backend.entity.vo.AgvUploadInfoVO;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

public interface AgvTaskService extends IService<AgvTask> {

    String STATUS_WAITING = "待巡视";
    String STATUS_PATROLLING = "巡视中";
    String STATUS_PENDING = "待上传";
    String STATUS_DONE = "已完成";
    String STRING_UPLOADING = "上传中";

    List<AgvTask> selectAgvTaskList(AgvTask task);

    AgvTask selectAgvTaskById(Long id);

    int insertAgvTask(AgvTask task);

    int updateAgvTask(AgvTask task);

    int deleteAgvTaskById(Long id);

    AjaxResult startTask(Long id);

    AjaxResult endTask(Long id, boolean isAbort);

    List<AgvUploadInfoVO> preUploadTask(Long id);

    int uploadTask(Long id);

    List<AgvTask> getTasksByTime(String startTime, String endTime);
}
